﻿
Imports System.IO

Public Class caption
    Inherits xhtmlControl

    Protected Overrides Function availableAttribute(ByVal key As String) As Boolean
        Return attributesCollection.common(key)
    End Function

    Public Sub New(Optional ByVal buff As Stream = Nothing)
        MyBase.New(buff, "caption")
    End Sub
End Class

Public Class table
    Inherits xhtmlControl

    Protected Overrides Function availableAttribute(ByVal key As String) As Boolean
        Return attributesCollection.common(key) OrElse _
                attributesCollection.border(key) OrElse _
                attributesCollection.cellpadding(key) OrElse _
                attributesCollection.cellspacing(key) OrElse _
                attributesCollection.frame(key) OrElse _
                attributesCollection.rules(key) OrElse _
                attributesCollection.summary(key) OrElse _
                attributesCollection.width(key)
    End Function

    Public Sub New(Optional ByVal buff As Stream = Nothing)
        MyBase.New(buff, "table")
    End Sub
End Class

Public Class td
    Inherits xhtmlControl

    Protected Overrides Function availableAttribute(ByVal key As String) As Boolean
        Return attributesCollection.common(key) OrElse _
                attributesCollection.abbr(key) OrElse _
                attributesCollection.align(key) OrElse _
                attributesCollection.axis(key) OrElse _
                attributesCollection.char(key) OrElse _
                attributesCollection.charoff(key) OrElse _
                attributesCollection.colspan(key) OrElse _
                attributesCollection.headers(key) OrElse _
                attributesCollection.rowspan(key) OrElse _
                attributesCollection.scope(key) OrElse _
                attributesCollection.valign(key)
    End Function

    Public Sub New(Optional ByVal buff As Stream = Nothing)
        MyBase.New(buff, "td")
    End Sub
End Class

Public Class th
    Inherits xhtmlControl

    Protected Overrides Function availableAttribute(ByVal key As String) As Boolean
        Return attributesCollection.common(key) OrElse _
                attributesCollection.abbr(key) OrElse _
                attributesCollection.align(key) OrElse _
                attributesCollection.axis(key) OrElse _
                attributesCollection.char(key) OrElse _
                attributesCollection.charoff(key) OrElse _
                attributesCollection.colspan(key) OrElse _
                attributesCollection.headers(key) OrElse _
                attributesCollection.rowspan(key) OrElse _
                attributesCollection.scope(key) OrElse _
                attributesCollection.valign(key)
    End Function

    Public Sub New(Optional ByVal buff As Stream = Nothing)
        MyBase.New(buff, "th")
    End Sub
End Class

Public Class tr
    Inherits xhtmlControl

    Protected Overrides Function availableAttribute(ByVal key As String) As Boolean
        Return attributesCollection.common(key) OrElse _
                attributesCollection.align(key) OrElse _
                attributesCollection.char(key) OrElse _
                attributesCollection.charoff(key) OrElse _
                attributesCollection.valign(key)
    End Function

    Public Sub New(Optional ByVal buff As Stream = Nothing)
        MyBase.New(buff, "tr")
    End Sub
End Class

Public Class col
    Inherits xhtmlControl

    Protected Overrides Function availableAttribute(ByVal key As String) As Boolean
        Return attributesCollection.common(key) OrElse _
                attributesCollection.align(key) OrElse _
                attributesCollection.char(key) OrElse _
                attributesCollection.charoff(key) OrElse _
                attributesCollection.span(key) OrElse _
                attributesCollection.valign(key) OrElse _
                attributesCollection.width(key)
    End Function

    Public Shadows Property width() As multilength
        Get
            Return attribute("width")
        End Get
        Set(ByVal value As multilength)
            attribute("width") = value
        End Set
    End Property

    Public Sub New(Optional ByVal buff As Stream = Nothing)
        MyBase.New(buff, "col")
    End Sub
End Class

Public Class colgroup
    Inherits xhtmlControl

    Protected Overrides Function availableAttribute(ByVal key As String) As Boolean
        Return attributesCollection.common(key) OrElse _
                attributesCollection.align(key) OrElse _
                attributesCollection.char(key) OrElse _
                attributesCollection.charoff(key) OrElse _
                attributesCollection.span(key) OrElse _
                attributesCollection.valign(key) OrElse _
                attributesCollection.width(key)
    End Function

    Public Shadows Property width() As multilength
        Get
            Return attribute("width")
        End Get
        Set(ByVal value As multilength)
            attribute("width") = value
        End Set
    End Property

    Public Sub New(Optional ByVal buff As Stream = Nothing)
        MyBase.New(buff, "colgroup")
    End Sub
End Class

Public Class tbody
    Inherits xhtmlControl

    Protected Overrides Function availableAttribute(ByVal key As String) As Boolean
        Return attributesCollection.common(key) OrElse _
                attributesCollection.align(key) OrElse _
                attributesCollection.char(key) OrElse _
                attributesCollection.charoff(key) OrElse _
                attributesCollection.valign(key)
    End Function

    Public Sub New(Optional ByVal buff As Stream = Nothing)
        MyBase.New(buff, "tbody")
    End Sub
End Class

Public Class thead
    Inherits xhtmlControl

    Protected Overrides Function availableAttribute(ByVal key As String) As Boolean
        Return attributesCollection.common(key) OrElse _
                attributesCollection.align(key) OrElse _
                attributesCollection.char(key) OrElse _
                attributesCollection.charoff(key) OrElse _
                attributesCollection.valign(key)
    End Function

    Public Sub New(Optional ByVal buff As Stream = Nothing)
        MyBase.New(buff, "thead")
    End Sub
End Class

Public Class tfoot
    Inherits xhtmlControl

    Protected Overrides Function availableAttribute(ByVal key As String) As Boolean
        Return attributesCollection.common(key) OrElse _
                attributesCollection.align(key) OrElse _
                attributesCollection.char(key) OrElse _
                attributesCollection.charoff(key) OrElse _
                attributesCollection.valign(key)
    End Function

    Public Sub New(Optional ByVal buff As Stream = Nothing)
        MyBase.New(buff, "tfoot")
    End Sub
End Class
